It is known to represent human or animal bodies by digital models comprising a “skeleton” covered by a “skin”. The skeleton is constituted by a set of segments, called “bones” even if they do not necessarily correspond to actual anatomical bones, articulated by rotational joints having one, two or three rotational degrees of freedom. Such models, also known as “avatars”, are usually provided in standard postures, such as the so-called “T-pose” (partially spread legs, arms extended horizontally) for human body models.
In order to make the avatar take a particular posture different from the original one, it is necessary to determine a set of rotations of the joints articulating the bones of its skeleton leading to the desired result. This is not an easy task.
In many cases, instead of fully specifying the desired posture, one only imposes a constraint on one or more particular points (called “effectors”) of the skeleton. For instance, one may impose that a hand of the avatar (e.g. corresponding to the endpoint of a bone representing its forearm) takes a particular position. From a theoretical standpoint, this corresponds to the problem of inverse kinematics (IK). Several algorithms exist for solving this problem.